package com.foreknow.demo9;

public class Game {
    //初始化Person以及Computer对象
    Person person;
    Computer computer ;
    int count;//对战次数

    //通过构造器初始化
    public Game() {
        person = new Person();
        computer = new Computer();
    }

//    public void init () {
//        person = new Person();
//        computer = new Computer();
//    }


    /**
     * 定义开始游戏的方法
     */
    public void start() {
        // 1. 调用方法初始化对象
        // 2. 输出开始游戏的信息
        // 3. 让用户选择对方的角色(1 2 3)
        // 4. 需要判断，如果用户选择的是1 就要将1所对应的角色赋值给Computer对象中的name属性
        // 5. 输出“您选择了谁(Computer.name属性)进行对战”

        // 开始游戏
        // 6. 提示用户是否开始游戏并接收用户的输入
        // 7. 如果用户选择了y{
        //      出拳
        //      调用Person对象中的showFirst方法
        //      调用Computer对象中的showFirst方法
        //      裁决是赢了还是输了（要根据以上方法返回的结果，3种 赢了还是输了还是平局）-----需要判断
        // }

        // 8. 使用循环决定是否进行下一轮,还需要用户输入(y/n) 每循环一次对战次数加1

        // 9. 显示对战的结果，可以定义一个方法 showResult() {
        //      输出 谁(Computer对象中的name属性)  VS  谁(Person对象中的name属性) 对象
        //      输出对战次数count
        //      调用 calcResult()来计算比赛的结果 要根据方法的返回值来判断
        //      如果calcResult()返回的结果为1 输出平手 否则如果结果为2 输出赢了  否则输出输了
        // }

        // 10. 定义一个最终比赛结果的方法 calcResult() {
        //     根据成绩score来判断，如果用户的成绩等于电脑的成绩  return 1 表示平局
        //     否则如果用户的成绩大于电脑的成绩 return 2 表示用户赢 否则return 3 表示电脑赢
        //    }

        // 11. 使用循环来决定是否开始下一局
//        init();  // 初始化
//        System.out.println("----------------欢 迎 进 入 游 戏 世 界----------------\n");
//        System.out.println("\n\t\t******************");
//        System.out.println  ("\t\t**  猜拳, 开始    **");
//        System.out.println  ("\t\t******************");
//
//        System.out.println("\n\n出拳规则：1.剪刀 2.石头 3.布");
//        /*选择对方角色*/
//        System.out.print("请选择对方角色（1：刘备 2：孙权 3：曹操）： ");
//        Scanner input = new Scanner(System.in);
//        int role = input.nextInt();
//        if(role == 1){
//            computer.name = "刘备";
//        }else if(role == 2){
//            computer.name = "孙权";
//        }else if(role == 3){
//            computer.name = "曹操";
//        }
//        System.out.println("你选择了 "+computer.name+"对战");
//
//        System.out.print("\n要开始吗？（y/n） ");
//        String con = input.next();
//        int perFist;   //用户出的拳
//        int compFist;  //计算机出的拳
//        while(con.equals("y")){
//            /*出拳*/
//            perFist = person.showFist();
//            compFist = computer.showFist();
//            /*裁决*/
//            if((perFist == 1 && compFist == 1) || (perFist == 2 && compFist == 2) || (perFist == 3 && compFist == 3)){
//                System.out.println("结果:和局,真衰！嘿嘿,等着瞧吧 !\n");  //平局
//            }else if((perFist == 1 && compFist == 3) || (perFist == 2  && compFist == 1) || (perFist == 3 && compFist == 2)){
//                System.out.println("结果： 恭喜， 你赢了！");  //用户赢
//                person.score++;
//            }else{
//                System.out.println("结果说:^_^,你输了，真笨!\n");  //计算机赢
//                computer.score++;
//            }
//            count++;
//            System.out.print("\n是否开始下一轮（y/n）:  ");
//            con = input.next();
//        }
//        /*显示结果*/
//        showResult();
//    }
//
//    /**
//     * 显示比赛结果
//     */
//    public void showResult(){
//        /*显示最后结果*/
//        System.out.println("---------------------------------------------------");
//        System.out.println(computer.name + "  VS  " + person.name);
//        System.out.println("对战次数："+ count);
//
//        int result = calcResult();
//        if(result == 1){
//            System.out.println("结果：打成平手，下次再和你一分高下！");
//        }else if(result == 2){
//            System.out.println("结果：恭喜恭喜！");   //用户获胜
//        }else{
//            System.out.println("结果：呵呵，笨笨，下次加油啊！");   //计算机获胜
//        }
//        System.out.println("---------------------------------------------------");
//    }
//
//    /**
//     * 计算比赛结果
//     * @return 1:战平；2:用户赢；3:电脑赢
//     */
//    public int calcResult(){
//        if(person.score == computer.score){
//            return 1; // 战平
//        }else if(person.score > computer.score){
//            return 2; // 用户赢
//        }else{
//            return 3; // 电脑赢
//        }
//
//    }
//}

}


    public static void main(String[] args) {
        Game game = new Game();

    }
}
